﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace NMF.Optimizations
{
    public interface IOptimizationScenario
    {
        double Cost { get; set; }

        Optimization Optimization { get; }

        IEnumerable<IOptimizationModification> AppliedModifications { get; }

        IOptimizationScenario Fork(IOptimizationModification modification);
        IOptimizationScenario Fork(IEnumerable<IOptimizationModification> modifications);
    }
}
